#pragma once

/*
*	Purpose:
*		The RoomGrid is a grid that is used to display rooms.
*/
#include "EditorManager.hpp"
#include "MapGenerator.h"
#include <vector>
#include <list>
using namespace std;

class EditorManager;

class RoomGrid
{
private:
	vector<vector<list <int > > > m_Tiles;

	EditorManager* m_pEditorManager; // needed to get the ClipPlane
public:
	RoomGrid(EditorManager *pEditorManager) {m_pEditorManager = pEditorManager;}

	void BuildBackground(const Room& room); // build the "map"; this must be called before "AddRoom"
	void AddRoom(const Room& room); // adds a room to the map
	void Render(); // renders the map
	vector<vector<list<int>>>& GetGrid() {return m_Tiles;}
	void Render(bool nothing);
};